    .code16
    .text
    .global _start
    .extern InitLoader

_start:
    # 实模式，只有偏移
    jmp InitLoader


    .code32
    .text
    # 使得这个符号链接时对于其它文件可见
    .global ProtectModeEntry
    .extern BeforeExecuteKernel
ProtectModeEntry:
    # 重置段选择子到数据段
    mov $16, %ax
	mov %ax, %ds
    mov %ax, %ss
    mov %ax, %es
    mov %ax, %fs
    mov %ax, %gs

    # 进入了保护模式了，内存寻址依赖于段选择子
    # 跳转到内核入口
    jmp $0x8, $BeforeExecuteKernel

